1 /*
2 Copyright: Marcelo S. N. Mancini (Hipreme|MrcSnm), 2018 - 2021
3 License:   [https://creativecommons.org/licenses/by/4.0/|CC BY-4.0 License].
4 Authors: Marcelo S. N. Mancini
5 
6 	Copyright Marcelo S. N. Mancini 2018 - 2021.
7 Distributed under the CC BY-4.0 License.
8    (See accompanying file LICENSE.txt or copy at
9 	https://creativecommons.org/licenses/by/4.0/
10 */
11 module hip.jni.helper.androidlog;
12 version(Android):
13 import hip.jni.android.log;
14 import hip.util.string : toStringz;
15 import core.stdc.stdarg : va_end, va_list, va_start;
16 
17 //INFORMATION SECTION
18 int alogi(const(char*)tag, const(char*) format, va_list args)
19 {
20     return __android_log_vprint(android_LogPriority.ANDROID_LOG_INFO, tag, format, args);
21 }
22 int alogi(const(char*) tag, const(char*) format, ...)
23 {
24     va_list arg_list;
25     va_start(arg_list, format);
26     int result = alogi(tag,format,arg_list);
27     va_end(arg_list);
28     return result;
29 }
30 int alogi(string tag, string format, ...)
31 {
32     va_list arg_list;
33     va_start(arg_list, format);
34     const(char*) nTag = toStringz(tag);
35     const(char*) nFormat = toStringz(format);
36     int result = alogi(nTag, nFormat, arg_list);
37     va_end(arg_list);
38     return result;    
39 }
40 
41 
42 //WARNING SECTION
43 int alogw(const(char*)tag,const(char*)format,va_list args)
44 {
45     return __android_log_vprint(android_LogPriority.ANDROID_LOG_WARN, tag, format, args);
46 }
47 int alogw(const(char*) tag, const(char*) format, ...)
48 {
49     va_list arg_list;
50     va_start(arg_list, format);
51     int result = alogw(tag, format, arg_list);
52     va_end(arg_list);
53     return result;
54 }
55 
56 int alogw(string tag, string format, ...)
57 {
58     va_list arg_list;
59     va_start(arg_list, format);
60     const(char*) nTag = toStringz(tag);
61     const(char*) nFormat = toStringz(format);
62     int result = alogw(nTag, nFormat, arg_list);
63     va_end(arg_list);
64     return result;    
65 }
66 
67 // ERROR SECTION
68 int aloge(const(char*) tag, const(char*) format, va_list args)
69 {
70     return __android_log_vprint(android_LogPriority.ANDROID_LOG_ERROR, tag, format, args);
71 }
72 int aloge(const(char*) tag, const(char*) format, ...)
73 {
74     va_list arg_list;
75     va_start(arg_list, format);
76     int result = aloge(tag,format,arg_list);
77     va_end(arg_list);
78     return result;
79 }
80 int aloge(string tag, string format, ...)
81 {
82     va_list arg_list;
83     va_start(arg_list, format);
84     const(char*) nTag = toStringz(tag);
85     const(char*) nFormat = toStringz(format);
86     int result = aloge(nTag, nFormat, arg_list);
87     va_end(arg_list);
88     return result;    
89 }
90 
91 
92 // FATAL SECTION
93 int alogf(const(char*) tag, const(char*) format, va_list args)
94 {
95     return __android_log_vprint(android_LogPriority.ANDROID_LOG_FATAL, tag, format, args);
96 }
97 int alogf(const(char*) tag, const(char*) format, ...)
98 {
99     va_list arg_list;
100     va_start(arg_list, format);
101     int result = alogf(tag,format,arg_list);
102     va_end(arg_list);
103     return result;
104 }
105 int alogf(string tag, string format, ...)
106 {
107     va_list arg_list;
108     va_start(arg_list, format);
109     const(char*) nTag = toStringz(tag);
110     const(char*) nFormat = toStringz(format);
111     int result = alogf(nTag, nFormat, arg_list);
112     va_end(arg_list);
113     return result;    
114 }